package com.ruoyi.common.core.domain.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

import java.util.List;

/**
 * 年级信息对象 wsd_grades
 *
 * @author ruoyi
 * @date 2024-04-14
 */
@Data
public class WsdGrades extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 年级ID */
    private Long id;

    /** 学校ID */
    @Excel(name = "学校ID")
    private Long schoolId;

    /** 年级名称 */
    @Excel(name = "年级名称")
    private String name;

    /** 状态：1=活跃, 2=不活跃 */
    @Excel(name = "状态：1=活跃, 2=不活跃")
    private Long status;

    /** 逻辑删除标记，0=未删除，1=已删除 */
    @Excel(name = "逻辑删除标记，0=未删除，1=已删除")
    private Integer isDeleted;

    /** 创建人 */
    @Excel(name = "创建人")
    private String createdBy;

    @TableField(exist = false)
    private String classIds;
    /** 更新人 */
    @Excel(name = "更新人")
    private String updatedBy;
    private List<WsdClasses> classes;  // 关联的班级列表
    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }
    public void setSchoolId(Long schoolId)
    {
        this.schoolId = schoolId;
    }

    public Long getSchoolId()
    {
        return schoolId;
    }
    public void setName(String name)
    {
        this.name = name;
    }

    public String getName()
    {
        return name;
    }
    public void setStatus(Long status)
    {
        this.status = status;
    }

    public Long getStatus()
    {
        return status;
    }
    public void setIsDeleted(Integer isDeleted)
    {
        this.isDeleted = isDeleted;
    }

    public Integer getIsDeleted()
    {
        return isDeleted;
    }
    public void setCreatedBy(String createdBy)
    {
        this.createdBy = createdBy;
    }

    public String getCreatedBy()
    {
        return createdBy;
    }
    public void setUpdatedBy(String updatedBy)
    {
        this.updatedBy = updatedBy;
    }

    public String getUpdatedBy()
    {
        return updatedBy;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("schoolId", getSchoolId())
            .append("name", getName())
            .append("status", getStatus())
            .append("isDeleted", getIsDeleted())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .append("createdBy", getCreatedBy())
            .append("updatedBy", getUpdatedBy())
            .toString();
    }
}
